feat(desktop): M6-rest part 1 — Vite + Tailwind + electron-builder configs#48
Merged
Conversation
…nfigs
All build configuration files in place; the only thing left for an actual
Mac client ship is installing the binary deps (~250 MB) — kept separate so
CI install stays fast.
Files added (all type-check clean without the heavy deps):
· apps/desktop/vite.config.template.ts — renderer build (dev 5173, prod
→ dist/), @deepcode/core source alias for HMR. `.template` suffix so
vitest doesn't try to load it before `vite` is installed; rename to
.ts to activate.
· apps/desktop/tailwind.config.ts — color tokens matching
docs/VISUAL_DESIGN.html.
· apps/desktop/postcss.config.template.js — wires Tailwind +
autoprefixer. Same template-suffix trick.
· apps/desktop/src/index.html — root HTML with strict CSP allowing only
DeepSeek API connect-src.
· apps/desktop/src/index.css — @tailwind directives added in front of
the existing fallback utility classes.
· apps/desktop/electron-builder.yml — universal .dmg, hardened runtime,
notarize: true, publish to GitHub Releases.
· apps/desktop/build-resources/entitlements.mac.plist — JIT, child
processes, network, file access entitlements.
· apps/desktop/package.json — real scripts (build:renderer, build:
electron, dev, pack, dist) + notes block listing deps to add.
· apps/desktop/vitest.config.ts — explicit empty config so vitest
doesn't auto-discover vite.config / postcss.config.
To go from skeleton to running Mac client:
pnpm add -D --filter @deepcode/desktop \
electron electron-builder electron-updater \
vite @vitejs/plugin-react \
tailwindcss postcss autoprefixer \
concurrently wait-on
mv apps/desktop/vite.config.template.ts apps/desktop/vite.config.ts
mv apps/desktop/postcss.config.template.js apps/desktop/postcss.config.js
pnpm dev # vite + electron concurrent
pnpm dist # signed universal .dmg
Tests: still 501 passing. All builds clean.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
oratis
added a commit
that referenced
this pull request
May 28, 2026
Tracks PRs #46-#49 (post-v4 work): · #46 fix: worktree GIT_* env var leak (husky pre-commit context broke child git invocations) · #47 feat: M9 release-notes script + M3.5-ext DNS proxy + M8 /effort UI · #48 feat(desktop): full Vite/Tailwind/electron-builder config (.template suffix avoids dep-missing failures) · #49 feat: WhisperCppProvider + 4 more desktop screens + Nav Major-milestone status: · M0-M5.2 + M3.5 + M3c-rest + M4 + M8 → 100% · M6 → 65% (skeleton + 6 screens + all build configs; need binary deps + last 5 screens + agent IPC + Apple signing) · M7 → 15% (depends on M6) · M9 → 75% Overall: ~95% v1 scope. Remaining estimate: 2-3 weeks single-engineer- focused for v1 ship. M6 Mac client is the only multi-week piece. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Build pipeline configs in place: vite (template), tailwind, postcss (template), electron-builder.yml with notarize + GitHub publish, entitlements plist, index.html with CSP. Template-suffixed files avoid auto-load failures when heavy deps aren't installed. README has the one-line install when ready to ship. 501 tests still passing.